//引入获取文件的模块
const fs = require('fs')
const { resolve } = require('path')

//创建一个promise对象
const p = new Promise((resolve,reject)=>{
    fs.readFile('./resource/file.md',(err,data)=>{
        if(err) reject(err)
        resolve(data)
    })
})

//调用then方法
p.then(value=>{
    // console.log(value.toString())
    //用返回一个promise对象来处理then回调
    return new Promise((resolve,reject)=>{
        fs.readFile('./resource/file1.md',(err,data)=>{
            if(err) reject(err)
            //将文件1和文件2的处理结果放入到数组中，作为resolve的参数
            resolve([value,data])
        })
    })
}).then(value=>{
    //这儿的value就是文件1，和文件2内容的数组
    //再处理第三个文件
    return new Promise((resolve,reject)=>{
        fs.readFile('./resource/file2.md',(err,data)=>{
            if(err) reject(err)
            //将文件1和文件2的处理结果放入到数组中，作为resolve的参数
            value.push(data)
            resolve(value)
        })
    })
}).then(value=>{
    //这儿的value就是文件1，和文件2和文件3的全部内容的数组
    console.log(value.join('\r\n'))
})